package fr.jade.fraclite.api.control;

public interface GenericAttributeController {
    
    /**
     * retrieve an attribute identified by its name.
     * @param name the name of the attribute to read.
     * @return the String value of the attribute identified by its name.
     * @throws NoSuchAttributeException if the given attribute is unknow. 
     */
    String getAttribute(String name) throws NoSuchAttributeException;
    
    /**
     * set the value of an attribute identified by its name.
     * @param name the name of the attribute to read.
     * @param value the value of the attribute.
     * @throws NoSuchAttributeException if the given attribute is unknow. 
     */
    void setAttribute(String name, String value) throws NoSuchAttributeException;

    
    
    /**
     * Returns the names of the attribute of the component to which this
     * interface belongs.
     *
     * @return the names of the attributes of the component to which this
     *      interface belongs.
     */

    String[] listFcAtt ();
    
}
